import Vue from "vue";
import VueRouter from "vue-router";
import Login from "../views/Login.vue";
import Home from "../views/Home.vue";
import NProgress from 'nprogress'





import 'nprogress/nprogress.css'


Vue.use(VueRouter);

const routes = [
  {
    path: "/",
    redirect: "/login"
  },
  {
    path: "/login",
    name: "login",
    component: Login
  },
  {
    path: "/home",
    name: "home",
    component: Home,
    children: [
      {
        path: '/question',
        name: 'question',

        component: () => import(/* webpackChunkName: "question" */ "../components/EditQuestion")


      },
      {
        path: '/setting',
        name: 'setting',

        component: () => import(/* webpackChunkName: "question" */ "../components/Setting")


      },
      {
        path: '/myquestion',
        name: 'myquestion',

        component: () => import(/* webpackChunkName: "question" */ "../components/MyQuestion")


      },
    ]
  },
  {
    path: "/preview",
    name: "preview",
    component: () =>
      import(/* webpackChunkName: "preview" */ "../views/Preview.vue")

  },
  {
    path: "/thank",
    name: "thank",
    component: () =>
      import(/* webpackChunkName: "thank" */ "../views/ThankYou.vue")

  },
  // {
  //   path: "/about",
  //   name: "About",
  //   // route level code-splitting
  //   // this generates a separate chunk (about.[hash].js) for this route
  //   // which is lazy-loaded when the route is visited.
  //   component: () =>
  //     import(/* webpackChunkName: "about" */ "../views/About.vue")
  // }
];

const router = new VueRouter({
  routes
});
router.beforeEach((to, from, next) => {

  NProgress.start()
  if (to.path === "/login") return next()
  const token = window.sessionStorage.getItem("token") || window.localStorage.getItem("token")
  if (!token) { return next("/login") }
  next();
})
router.afterEach(() => {
  NProgress.done();

})
export default router;
